#ifndef _PINHOLE_CAMERA_H_
#define _PINHOLE_CAMERA_H_

#include "Camera.h"
#include "Point3.h"
#include "OrthoNormalBasis.h"

#define PI	3.1415926

class PinholeCamera : public Camera
{
public:
	PinholeCamera(void);
	PinholeCamera(Point3* eye, Point3* target, Vector3* up, double fov, int width, int height);
	~PinholeCamera(void);

	Ray* getRay(double x, double y, double lensX, double lensY);
	Point2* getPoint(Point3 p);


private:
	Point3*				eye;
	OrthoNormalBasis*	basis;
	double				au;
	double				av;
};

#endif



